System and method of decreasing time to begin acquisition of cellular networks after power up

ABSTRACT

In the system-selection solution used in wireless devices, system selection files may be read from a Universal Integrated Circuit Card (UICC) and converted into a priority list. The priority list may specify the relative priority of 3GPP and 3GPP2 systems and govern system selection by a device. Traditionally, generation of the priority list may be performed at every power up of the device. However, the reading of the system selection files from the UICC and generation of the priority list may take a period of time which may affect the performance of the device. For certain aspects of the present disclosure, the priority list may be generated after power up only when system selection files change. Therefore, the time for acquiring a wireless network upon the power up of a device may be reduced, particularly when system selection files remain the same as before.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to U.S. Provisional Application Ser.No. 61/436,808, filed on Jan. 27, 2011, which is expressly incorporatedby reference herein in its entirety.

TECHNICAL FIELD

Certain aspects of the present disclosure generally relate to wirelesscommunications and, more particularly, to techniques for decreasing thetime to begin acquisition of cellular networks after power up of awireless device.

BACKGROUND

Wireless communication systems are widely deployed to provide varioustypes of communication content such as voice, data, and so on. Thesesystems may be multiple-access systems capable of supportingcommunication with multiple users by sharing the available systemresources (e.g., bandwidth and transmit power). Examples of suchmultiple-access systems include Code Division Multiple Access (CDMA)systems, Time Division Multiple Access (TDMA) systems, FrequencyDivision Multiple Access (FDMA) systems, 3^(rd) Generation PartnershipProject (3GPP) Long Term Evolution (LTE) systems, Long Term EvolutionAdvanced (LTE-A) systems, and Orthogonal Frequency Division MultipleAccess (OFDMA) systems.

Generally, a wireless multiple-access communication system cansimultaneously support communication for multiple wireless terminals.Each terminal communicates with one or more base stations viatransmissions on the forward and reverse links. The forward link (ordownlink) refers to the communication link from the base stations to theterminals, and the reverse link (or uplink) refers to the communicationlink from the terminals to the base stations. This communication linkmay be established via a single-input single-output, multiple-inputsingle-output or a multiple-input multiple-output (MIMO) system.

As wireless communication technology advances, a growing number ofdifferent radio access technologies are being utilized. For instance,many geographic areas are now served by multiple wireless communicationsystems, each of which can utilize one or more different air interfacetechnologies. In order to increase versatility of wireless terminals insuch a network environment, there recently has been an increasing trendtoward multi-mode wireless terminals that are able to operate undermultiple radio technologies. For example, a multi-mode implementationcan enable a terminal to select a system from among multiple systems ina geographic area, each of which may utilize different radio interfacetechnologies, and subsequently communicate with one or more chosensystems.

SUMMARY

In an aspect of the disclosure, a method for wireless communications isprovided. The method generally includes, upon power up of a wirelessdevice, determining if one or more system selection files of existingsystem selection files have changed, and performing network scanningutilizing the existing system selection files if the one or more systemselection files have not changed.

In an aspect of the disclosure, an apparatus for wireless communicationsis provided. The apparatus generally includes, upon power up of awireless device, means for determining if one or more system selectionfiles of existing system selection files have changed, and means forperforming network scanning utilizing the existing system selectionfiles if the one or more system selection files have not changed.

In an aspect of the disclosure, an apparatus for wireless communicationsis provided. The apparatus generally includes at least one processor anda memory coupled to the at least one processor. The at least oneprocessor is generally configured to, upon power up of a wirelessdevice, determine if one or more system selection files of existingsystem selection files have changed, and perform network scanningutilizing the existing system selection files if the one or more systemselection files have not changed.

In an aspect of the disclosure, a computer-program product for wirelesscommunications is provided. The computer-program product generallyincludes a computer-readable medium having code for, upon power up of awireless device, determining if one or more system selection files ofexisting system selection files have changed, and performing networkscanning utilizing the existing system selection files if the one ormore system selection files have not changed.

Various aspects and features of the disclosure are described in furtherdetail below.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above-recited features of the presentdisclosure can be understood in detail, a more particular description,briefly summarized above, may be had by reference to aspects, some ofwhich are illustrated in the appended drawings. It is to be noted,however, that the appended drawings illustrate only certain typicalaspects of this disclosure and are therefore not to be consideredlimiting of its scope, for the description may admit to other equallyeffective aspects.

FIG. 1 illustrates an example multiple access wireless communicationsystem in accordance with certain aspects of the present disclosure.

FIG. 2 illustrates a block diagram of an access point and a userterminal in accordance with certain aspects of the present disclosure.

FIG. 3 illustrates various components that may be utilized in a wirelessdevice in accordance with certain aspects of the present disclosure.

FIGS. 4-5 illustrate examples of a network environment in which awireless communication device may be adapted to perform a multi-modesystem selection process, in accordance with certain aspects of thepresent disclosure.

FIG. 6 illustrates an example of a technique for generating a multi-modepreferred system list, in accordance with certain aspects of the presentdisclosure.

FIG. 7 illustrates an example system with a base station and a wirelessdevice, capable of generating a master system priority list upon thedetection of change in one or more system selection files, in accordancewith certain aspects of the present disclosure.

FIG. 8 illustrates example operations for generating a master systempriority list upon the detection of change in one or more systemselection files, in accordance with certain aspects of the presentdisclosure.

FIG. 9 provides an illustration of the comparison made by a wirelessdevice when determining whether a system selection file has changed, inaccordance with certain aspects of the present disclosure.

DETAILED DESCRIPTION

In the system-selection solution used in wireless devices, systemselection files may be read from a Universal Integrated Circuit Card(UICC) and converted into a priority list. The priority list may specifythe relative priority of 3GPP and 3GPP2 systems and govern systemselection by a device. Traditionally, generation of the priority listmay be performed at every power up of the device. However, the readingof the system selection files from the UICC and generation of thepriority list may take a period of time, which may affect theperformance of the device. For certain aspects of the presentdisclosure, the priority list may be generated after power up only whensystem selection files change. Therefore, the time for acquiring awireless network upon the power up of a device may be reduced,particularly when system selection files remain the same as before.

Various aspects of the disclosure are described more fully hereinafterwith reference to the accompanying drawings. This disclosure may,however, be embodied in many different forms and should not be construedas limited to any specific structure or function presented throughoutthis disclosure. Rather, these aspects are provided so that thisdisclosure will be thorough and complete, and will fully convey thescope of the disclosure to those skilled in the art. Based on theteachings herein one skilled in the art should appreciate that the scopeof the disclosure is intended to cover any aspect of the disclosuredisclosed herein, whether implemented independently of or combined withany other aspect of the disclosure. For example, an apparatus may beimplemented or a method may be practiced using any number of the aspectsset forth herein. In addition, the scope of the disclosure is intendedto cover such an apparatus or method which is practiced using otherstructure, functionality, or structure and functionality in addition toor other than the various aspects of the disclosure set forth herein. Itshould be understood that any aspect of the disclosure disclosed hereinmay be embodied by one or more elements of a claim.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any aspect described herein as “exemplary”is not necessarily to be construed as preferred or advantageous overother aspects.

Although particular aspects are described herein, many variations andpermutations of these aspects fall within the scope of the disclosure.Although some benefits and advantages of the preferred aspects arementioned, the scope of the disclosure is not intended to be limited toparticular benefits, uses, or objectives. Rather, aspects of thedisclosure are intended to be broadly applicable to different wirelesstechnologies, system configurations, networks, and transmissionprotocols, some of which are illustrated by way of example in thefigures and in the following description of the preferred aspects. Thedetailed description and drawings are merely illustrative of thedisclosure rather than limiting, the scope of the disclosure beingdefined by the appended claims and equivalents thereof.

An Example Wireless Communication System

The techniques described herein may be used for various wirelesscommunication networks such as Code Division Multiple Access (CDMA)networks, Time Division Multiple Access (TDMA) networks, FrequencyDivision Multiple Access (FDMA) networks, Orthogonal FDMA (OFDMA)networks, Single-Carrier FDMA (SC-FDMA) networks, etc. The terms“networks” and “systems” are often used interchangeably. A CDMA networkmay implement a radio technology such as Universal Terrestrial RadioAccess (UTRA), CDMA2000, etc. UTRA includes Wideband-CDMA (W-CDMA) andLow Chip Rate (LCR). CDMA2000 covers IS-2000, IS-95, and IS-856standards. A TDMA network may implement a radio technology such asGlobal System for Mobile Communications (GSM). An OFDMA network mayimplement a radio technology such as Evolved UTRA (E-UTRA), IEEE 802.11,IEEE 802.16, IEEE 802.20, Flash-OFDM®, etc. UTRA, E-UTRA, and GSM arepart of Universal Mobile Telecommunication System (UMTS). Long TermEvolution (LTE) is an upcoming release of UMTS that uses E-UTRA. UTRA,E-UTRA, GSM, UMTS, and LTE are described in documents from anorganization named “3rd Generation Partnership Project” (3GPP). CDMA2000is described in documents from an organization named “3rd GenerationPartnership Project 2” (3GPP2).

Single carrier frequency division multiple access (SC-FDMA) is atransmission technique that utilizes single carrier modulation at atransmitter side and frequency domain equalization at a receiver side.The SC-FDMA has similar performance and essentially the same overallcomplexity as those of OFDMA system. However, SC-FDMA signal has lowerpeak-to-average power ratio (PAPR) because of its inherent singlecarrier structure. The SC-FDMA has drawn great attention, especially inthe uplink communications where lower PAPR greatly benefits the mobileterminal in terms of transmit power efficiency. It is currently aworking assumption for uplink multiple access scheme in the 3GPP LTE andthe Evolved UTRA.

An access point (“AP”) may comprise, be implemented as, or known asNodeB, Radio Network Controller (“RNC”), eNodeB, Base Station Controller(“BSC”), Base Transceiver Station (“BTS”), Base Station (“BS”),Transceiver Function (“TF”), Radio Router, Radio Transceiver, BasicService Set (“BSS”), Extended Service Set (“ESS”), Radio Base Station(“RBS”), or some other terminology.

An access terminal (“AT”) may comprise, be implemented as, or known asan access terminal, a subscriber station, a subscriber unit, a mobilestation, a remote station, a remote terminal, a user terminal, a useragent, a user device, user equipment, a user station, or some otherterminology. In some implementations, an access terminal may comprise acellular telephone, a cordless telephone, a Session Initiation Protocol(“SIP”) phone, a wireless local loop (“WLL”) station, a personal digitalassistant (“PDA”), a handheld device having wireless connectioncapability, a Station (“STA”), or some other suitable processing deviceconnected to a wireless modem. Accordingly, one or more aspects taughtherein may be incorporated into a phone (e.g., a cellular phone or smartphone), a computer (e.g., a laptop), a portable communication device, aportable computing device (e.g., a personal data assistant), anentertainment device (e.g., a music or video device, or a satelliteradio), a global positioning system device, or any other suitable devicethat is configured to communicate via a wireless or wired medium. Insome aspects, the node is a wireless node. Such wireless node mayprovide, for example, connectivity for or to a network (e.g., a widearea network such as the Internet or a cellular network) via a wired orwireless communication link.

Referring to FIG. 1, a multiple access wireless communication systemaccording to one aspect is illustrated in which procedures described forreducing the time to begin acquisition of wireless networks may beperformed. An access point 100 (AP) may include multiple antenna groups,one group including antennas 104 and 106, another group includingantennas 108 and 110, and an additional group including antennas 112 and114. In FIG. 1, only two antennas are shown for each antenna group,however, more or fewer antennas may be utilized for each antenna group.Access terminal 116 (AT) may be in communication with antennas 112 and114, where antennas 112 and 114 transmit information to access terminal116 over forward link 120 and receive information from access terminal116 over reverse link 118. Access terminal 122 may be in communicationwith antennas 106 and 108, where antennas 106 and 108 transmitinformation to access terminal 122 over forward link 126 and receiveinformation from access terminal 122 over reverse link 124. In a FDDsystem, communication links 118, 120, 124, and 126 may use differentfrequency for communication. For example, forward link 120 may use adifferent frequency then that used by reverse link 118.

Each group of antennas and/or the area in which they are designed tocommunicate is often referred to as a sector of the access point. In oneaspect of the present disclosure, each antenna group may be designed tocommunicate to access terminals in a sector of the areas covered byaccess point 100.

In communication over forward links 120 and 126, the transmittingantennas of access point 100 may utilize beamforming in order to improvethe signal-to-noise ratio of forward links for the different accessterminals 116 and 122. Also, an access point using beamforming totransmit to access terminals scattered randomly through its coveragecauses less interference to access terminals in neighboring cells thanan access point transmitting through a single antenna to all its accessterminals.

FIG. 2 illustrates a block diagram of an aspect of a transmitter system210 (also known as the access point) and a receiver system 250 (alsoknown as the access terminal) in a multiple-input multiple-output (MIMO)system 200. At the transmitter system 210, traffic data for a number ofdata streams is provided from a data source 212 to a transmit (TX) dataprocessor 214.

In one aspect of the present disclosure, each data stream may betransmitted over a respective transmit antenna. TX data processor 214formats, codes, and interleaves the traffic data for each data streambased on a particular coding scheme selected for that data stream toprovide coded data.

The coded data for each data stream may be multiplexed with pilot datausing OFDM techniques. The pilot data is typically a known data patternthat is processed in a known manner and may be used at the receiversystem to estimate the channel response. The multiplexed pilot and codeddata for each data stream is then modulated (i.e., symbol mapped) basedon a particular modulation scheme (e.g., BPSK, QSPK, M-PSK, or M-QAM)selected for that data stream to provide modulation symbols. The datarate, coding, and modulation for each data stream may be determined byinstructions performed by processor 230. Memory 232 may store data andsoftware for the transmitter system 210.

The modulation symbols for all data streams are then provided to a TXMIMO processor 220, which may further process the modulation symbols(e.g., for OFDM). TX MIMO processor 220 then provides N_(T) modulationsymbol streams to N_(T) transmitters (TMTR) 222 a through 222 t. Incertain aspects of the present disclosure, TX MIMO processor 220 appliesbeamforming weights to the symbols of the data streams and to theantenna from which the symbol is being transmitted.

Each transmitter 222 receives and processes a respective symbol streamto provide one or more analog signals, and further conditions (e.g.,amplifies, filters, and upconverts) the analog signals to provide amodulated signal suitable for transmission over the MIMO channel. N_(T)modulated signals from transmitters 222 a through 222 t are thentransmitted from N_(T) antennas 224 a through 224 t, respectively.

At receiver system 250, the transmitted modulated signals may bereceived by N_(R) antennas 252 a through 252 r and the received signalfrom each antenna 252 may be provided to a respective receiver (RCVR)254 a through 254 r. Each receiver 254 may condition (e.g., filters,amplifies, and downconverts) a respective received signal, digitize theconditioned signal to provide samples, and further process the samplesto provide a corresponding “received” symbol stream.

An RX data processor 260 then receives and processes the N_(R) receivedsymbol streams from N_(R) receivers 254 based on a particular receiverprocessing technique to provide N_(T) “detected” symbol streams. The RXdata processor 260 then demodulates, deinterleaves, and decodes eachdetected symbol stream to recover the traffic data for the data stream.The processing by RX data processor 260 may be complementary to thatperformed by TX MIMO processor 220 and TX data processor 214 attransmitter system 210.

A processor 270 periodically determines which pre-coding matrix to use.Processor 270 formulates a reverse link message comprising a matrixindex portion and a rank value portion. Memory 272 may store data andsoftware for the receiver system 250. The reverse link message maycomprise various types of information regarding the communication linkand/or the received data stream. The reverse link message is thenprocessed by a TX data processor 238, which also receives traffic datafor a number of data streams from a data source 236, modulated by amodulator 280, conditioned by transmitters 254 a through 254 r, andtransmitted back to transmitter system 210.

At transmitter system 210, the modulated signals from receiver system250 are received by antennas 224, conditioned by receivers 222,demodulated by a demodulator 240, and processed by a RX data processor242 to extract the reserve link message transmitted by the receiversystem 250. Processor 230 then determines which pre-coding matrix to usefor determining the beamforming weights, and then processes theextracted message.

FIG. 3 illustrates various components that may be utilized in a wirelessdevice 302 that may be employed within the wireless communication systemillustrated in FIG. 1. The wireless device 302 is an example of a devicethat may be configured to implement the various methods describedherein. The wireless device 302 may be a base station 100 or any of userterminals 116 and 122.

The wireless device 302 may include a processor 304 that controlsoperation of the wireless device 302. The processor 304 may also bereferred to as a central processing unit (CPU). Memory 306, which mayinclude both read-only memory (ROM) and random access memory (RAM),provides instructions and data to the processor 304. A portion of thememory 306 may also include non-volatile random access memory (NVRAM).The processor 304 typically performs logical and arithmetic operationsbased on program instructions stored within the memory 306. Theinstructions in the memory 306 may be executable to implement themethods described herein.

The wireless device 302 may also include a housing 308 that may includea transmitter 310 and a receiver 312 to allow transmission and receptionof data between the wireless device 302 and a remote location. Thetransmitter 310 and receiver 312 may be combined into a transceiver 314.A single or a plurality of transmit antennas 316 may be attached to thehousing 308 and electrically coupled to the transceiver 314. Thewireless device 302 may also include (not shown) multiple transmitters,multiple receivers, and multiple transceivers.

The wireless device 302 may also include a signal detector 318 that maybe used in an effort to detect and quantify the level of signalsreceived by the transceiver 314. The signal detector 318 may detect suchsignals as total energy, energy per subcarrier per symbol, powerspectral density and other signals. The wireless device 302 may alsoinclude a digital signal processor (DSP) 320 for use in processingsignals.

The various components of the wireless device 302 may be coupledtogether by a bus system 322, which may include a power bus, a controlsignal bus, and a status signal bus in addition to a data bus.

System Selection for Multi-Mode Wireless Systems

According to one feature, a unified approach to network/system selectionis provided for a mobile device implementing multi-mode system selection(MMSS). For example, a multi-mode wireless communication device may becapable of communicating according to GSM, cdma2000, Data Optimized(DO), Wideband CDMA (WCDMA), and/or Long Term Evolution (LTE) standardsfrom which it may select a preferred air interface. The selection of apreferred network/system may depend on a number of factors such as theoperating region of the wireless communication device (also referred toas mobile station, access terminal, client terminal, mobile phone, etc.)and roaming agreements between operators, among others. The frameworkfor MMSS includes two parts: (a) provisioning of databases in thewireless communication device with a list of systems; and (b) specifyinga set of rules used by the wireless communication device to determinethe most preferred system (e.g., wireless technology, network, oroperator) available in its current operating region using theprovisioned database.

Multiple frameworks for addressing issues related to MMSS have beendefined in different standards bodies. The MMSS framework requires theuse of information in different system selection files (e.g., PRL, PLMNDB, MSPL, and MLPL). The collective information in all these files maybe used by a wireless device to determine the system to camp on.

FIG. 4 illustrates an example of a network environment in which awireless communication device may be adapted to perform a unifiedmulti-mode system selection process using a common database, inaccordance with certain aspects of the present disclosure. The networkenvironment 400 may include a plurality of linked networks, such as afirst wireless network 402, a second wireless network 404, and a globalnetwork 406. For example, the first wireless network 402 may providewireless connectivity to mobile devices (i.e., wireless communicationdevices) via one or more wireless access points 410. The first wirelessnetwork 402 may be operated by a first network operator 412 according toa first wireless communication standard. For example, the first wirelessoperator 412 may implement a first MMSS database having a first databaseframework. Similarly, a second wireless network 404 may provide wirelessconnectivity to mobile devices via one or more wireless access points414. The second wireless network 404 may be operated by a second networkoperator 416 according to a second wireless communication standard. Forexample, the second wireless operator 416 may implement a second MMSSdatabase having a second database framework.

The global network 406 may include a plurality of inter-connectednetworks, such as the Internet, and may be communicatively coupled to(or include) the first and second wireless networks 402 and 404. Theglobal network 406 may be a packet switched network (such as theInternet).

The mobile device 408 may be capable of operating according to multiplecommunication standards (e.g., standards defined by 3GPP and 3GPP2). Asthe mobile device 408 roams from the first wireless network 402 and intothe second wireless network 404, the mobile device 408 may changenetwork operators (from the first network operator 412 to the secondnetwork operator 416). As a result of moving into the second wirelessnetwork 404, the mobile device 408′ may also change from using the firstMMSS database to the second MMSS database.

FIG. 5 illustrates an example of a network environment in which awireless communication device may be adapted to perform a multi-modesystem selection process, in accordance with certain aspects of thepresent disclosure. The network environment 500 may include a pluralityof networks, such as a first wireless network 502, a second wirelessnetwork 504, and a third wireless network 506. In contrast to theexample in FIG. 4, two or more of the networks 502, 504, and/or 506 mayhave overlapping network regions 507 of operation.

For example, the first wireless network 502 may provide wirelessconnectivity to mobile devices (i.e., wireless communication devices)via one or more wireless access points 510 and may be operated by afirst network operator 512 according to a first wireless communicationstandard. Similarly, a second wireless network 504 may provide wirelessconnectivity to mobile devices (i.e., wireless communication devices)via one or more wireless access points 514 and may be operated by asecond network operator 516 according to a second wireless communicationstandard. Likewise, a third wireless network 506 may provide wirelessconnectivity to mobile devices (i.e., wireless communication devices)via one or more wireless access points 518 and may be operated by athird network operator 520 according to a third wireless communicationstandard

The mobile device 508 may be capable of operating according to multiplecommunication standards (e.g., standards defined by 3GPP and 3GPP2). Asthe mobile device 508 moves into a region 507, where two or more of thenetworks 502, 504, and/or 506 operate, the mobile device 508 may have todecide between establishing communications via the first, second, orthird network 502, 504, or 506. In making such decision, the mobiledevice 508 may use collective information in provisioned system priorityfiles to determine a set of rules that define a priority among theavailable networks 502, 504, and/or 506. If the provisioned systempriority files are based on the 3GPP2 MMSS standard, the provisionedsystem priority files generally include the PRL, PLMN DB, MSPL and MLPL.

A specific, non-limiting example of a system select procedure overlayimplementation, as well as a specific example of a technique forgenerating a multi-mode preferred system list (i.e., a combined list),is illustrated by system 600 in FIG. 6. As FIG. 6 illustrates, systemselect information in the form of databases 610-650 may be utilized by amobile handset and/or any other suitable device. More particularly, thedatabases generally include a Public Land Mobile Network (PLMN) list610, a Preferred Roaming List (PRL) 620, one or more other systeminformation databases 630, an MMSS Location Priority List (MLPL) 640,and an MMSS System Priority List (MSPL) database 650.

In one specific example, PLMN list 610 may include a list of PLMNs andcan be configured as a small, coarse network list in order to minimizethe amount of space required for its storage. For example, respectivenetworks in PLMN list 610 can be identified using only a mobile countrycode (MCC) corresponding to a country in which the network is locatedand a mobile network code (MNC) corresponding to an operator of thenetwork and placed in PLMN list 610 in decreasing order of priority. Itshould be appreciated, however, that PLMN list 610 could utilize anysuitable formatting and/or information. As further illustrated, PLMNlist 610 can be constructed using an Equivalent Home PLMN (EHPLMN) list,which can specify networks classified as home networks, an Operator PLMN(OPLMN) list, which can specify one or more preferred networks, and/orany other suitable lists.

In another specific example, PRL 620 may include a list of systemsidentified by respective system identification numbers (SIDs) and/ornetwork identification numbers (NIDs). In contrast to the PLMN list 610,the PRL 620 may be a more granular, detailed list that favors detail ofinformation over storage space requirements. Accordingly, in addition toSID/NID and RAT information, the PRL 620 can additionally containinformation such as radio frequency (RF) band-class and/or channelinformation, acquisition type information, and/or other informationrelating to respective systems. Further, PRL 620 may include prioritylevel information that can enable multiple systems to share the samepriority level. As further illustrated in FIG. 6, PRL 620 may be groupedinto smaller lists for systems located in common geo-spatial locationsor GEOs, which can correspond to cities, states, and/or other geographicregions.

Thus, in accordance with one aspect, it can be appreciated that the PLMNlist 610 and the PRL 620 may provide system select procedures for amobile handset for various radio technologies. As system 600 furtherillustrates, one or more other sets 630 of system select procedures mayalso be utilized.

In accordance with another aspect, a system select procedure overlay maybe provided in system 600 by way of a MLPL 640 and a MSPL database 650.In one example, MLPL 640 may contain a set of MLPL records, each ofwhich can identify at least one system. In one example, MLPL 640 caninclude records for systems listed in PLMN list 610, PRL 620, othersystem information 630, and/or any other suitable listings. Further,each record in MLPL 640 can point to a MSPL in the MSPL database 650. Inone example, respective MSPLs in MSPL database 650 can provide rulesthat specify a priority listing of the systems that point to it.

A list generation algorithm 670 may be utilized, which can integrateinformation from databases 610-650 to create a single multi-mode list ofpreferred systems 680 (i.e., a combined list). In one example, listgeneration algorithm 670 can compile information from databases 610-650into a single list 680 that contains the detail of PRL 620 while stillsupporting coarser lists such as PLMN list 610. In another example, listgeneration algorithm 670 can be designed to expand information providedin PLMN list 610 using MLPL database 640 and/or MSPL database 650,allowing system selection to be conducted with further detail andgranularity than is supported by traditional MMSS approaches. In afurther example, list generation algorithm 670 can additionally utilizelocation information 660 to generate a multi-mode list of preferredsystems 680 that is specific to a given geographic area. Generation of alist 680 for particular location information 660 can be done in a singleaction for a set of locations, or an alternative aspect list generationalgorithm 670 can be automatically triggered upon detecting a change inthe location of an associated device.

System and Method of Decreasing Time to Begin Acquisition of CellularNetworks after Power Up

In the system-selection solution used in wireless devices (e.g., LTEmultimode devices), system selection files (i.e., MMSS files) may beread from a Universal Integrated Circuit Card (UICC) and converted intoa master system priority list (e.g., multi-mode list of preferredsystems 680) that combines information from the different MMSS files.MMSS files generally include a preferred roaming list (PRL), public landmobile network (PLMN) database files, an MMSS system priority list(MSPL), an MMSS location associated priority list (MLPL), and ThirdGeneration Partnership Project (3GPP) base station transceivers (BST),as illustrated in FIG. 6. The master system priority list may specifythe relative priority of 3GPP and 3GPP2 systems and govern systemselection by a wireless device (e.g., by performing network scanning).For some embodiments, priority of 3GPP and 3GPP2 systems may bedetermined by reading the system selection files from the UICCseparately, without combining the information from the files into themaster system priority list. However, examples utilizing the mastersystem priority list will be further described.

Traditionally, generation of the master system priority list may beperformed at every power up of the device. As a result, all the MMSSfiles may first be read from the UICC and then the generation code ofthe master system priority list may be run. The reading of the MMSSfiles from the UICC and generation of the master system priority listmay take up to, for example, 26 seconds. A large portion of the time maybe spent in reading the PRL from the UICC (e.g., due to granularity, asdescribed above), which may be, for example, 14 kilobytes in size. Thetime for reading the MMSS files and generating the master systempriority list at each power up may affect the performance of the UE.

For certain aspects of the present disclosure, the master systempriority list may be generated after power up only when one or more ofthe MMSS files change. Therefore, the time for acquiring a wirelessnetwork upon the power up of a device may be reduced, particularly whenMMSS files remain the same as before.

When a master system priority list is generated, the UE may store (e.g.,cache) certain parameters related to each MMSS file. These parametersmay be stored in non-volatile memory (NV). For example, referring backto FIG. 3, the parameters may be stored in the NVRAM of memory 306.Further, the master system priority list may be stored into NV beforepowering down. Therefore, for some embodiments, at a subsequent powerup, the UE may use the stored master system priority list to scan forsystems until (and if) a new master system priority list is generated.

For some embodiments, prior to loading a complete MMSS file (e.g.,reading the MMSS file from the UICC), the UE may determine if the MMSSfile has changed, as will be described further herein. If there is nochange in any of the MMSS files, the stored master system priority listmay be used for performing network scanning, and a new master systempriority list may not be generated. Further, upon power up, since the UEmay begin performing scans using the stored master system priority list,there may be no delay in acquiring a wireless network. Therefore, insituations where there is no change in any of the MMSS files, there maybe around, for example, a 20 second savings in power up acquisition ofthe wireless network. For some embodiments, there may be savings byusing a phased approach, for example, by caching the PRL, as will bedescribed below.

FIG. 7 illustrates an example system 700 with a base station 710 and aUE 720, capable of generating a master system priority list upon thedetection of change in one or more MMSS files, in accordance withcertain aspects of the present disclosure. As illustrated, the basestation 710 may include a file generation module 714 for generating MMSSfiles. Parameters of the MMSS files may be transmitted, via atransmitter module 712, to the UE 720.

The UE 720 may receive the parameters of the MMSS files via a receivermodule 726. The UE 720 may compare the received parameters withpreviously-stored MMSS file parameters, using a parameter comparisonmodule 724. Upon comparison, if there have been no changes in the MMSSfile parameters, a stored master system priority list may be used forperforming network scanning. Otherwise, a new master system prioritylist may be generated. The UE 720 may transmit feedback via atransmitter module 722, and the base station 710 may receive thefeedback via a receiver module 716.

As described above, priority of 3GPP and 3GPP2 systems may be determinedby reading system selection files from the UICC separately, withoutcombining the information from the files into the master system prioritylist.

FIG. 8 illustrates example operations 800 for performing networkscanning, in accordance with certain aspects of the present disclosure.The operations 800 may be performed, for example, by a UE.

At 802, upon power up of a wireless device, the UE may determine if oneor more system selection files (e.g., that specify system priorityrules) of existing system selection files have changed. For someembodiments, the UE may perform network scanning by utilizing theexisting system selection files prior to making the determination.

The UE may determine if the existing system selection files have changedby comparing parameters for the existing system selection files with oneor more corresponding parameters for new system selection files. Forsome embodiments, the parameters for the existing system selection filesmay be stored in a non-volatile memory of the UE. For some embodiments,comparing may include performing a bit-by-bit comparison between thestored parameters and the parameters for the new system selection files.For some embodiments, comparing may include comparing a stored hashvalue with a hash formed from one or more parameters for the new systemselection files.

The parameters for the new system selection files may be read from aUICC of the UE. The parameters utilized for comparison generally includeat least one of a version parameter indicating a version of anassociated system selection file, a size of the associated systemselection file, and a count of a number of records in the associatedsystem selection file. The size of these parameters is smaller than thesize of the entire file. Hence, they may be read faster than the entirefile.

At 804, the UE may perform network scanning utilizing the existingsystem selection files if the one or more system selection files havenot changed. Moreover, as described above, upon power up, since the UEmay begin performing scans using the existing system selection files,there may be no delay in acquiring a wireless network. As describedabove, the existing system selection files may be used to generate amaster system priority list, and performing the network scanning mayinclude utilizing the master system priority list without generating anew master system priority list if the one or more system selectionfiles have not changed.

Optionally at 806, the UE may read changed system selection files from aUICC of the wireless device if the one or more system selection fileshave changed. Then the UE may perform network scanning utilizing atleast the changed system selection files. For some embodiments,parameters related to the updated system selection files may be storedin non-volatile memory. For some embodiments, a new master systempriority list may be generated.

The logic for determining whether an MMSS file has changed may bedifferent for each type of MMSS file. For example, a dimensions blockfor PRL (PRL_DIMENSIONS block) may be used to determine if PRL haschanged. The dimensions block generally includes an identifier of thePRL (PRL_LIST_ID), a current PRL list size (CUR_PRL_LIST_SIZE), thenumber of acquisition records included in the acquisition table of thePRL (NUM_ACQ_RECS), and the number of system records included in thesystem table of the PRL (NUM_SYS_RECS). As mentioned earlier, the abovePRL parameters may be stored in NV when a master system priority list isgenerated. If the PRL parameters read from the UICC are the same as thestored PRL parameters, the UE may be determine that the PRL has notchanged since the last generation of the master system priority list.Since only the dimensions block may be read from the UICC, the amount ofdata to read may be significantly reduced if there is no change.Therefore, in situations where there is no change in the PRL, there maybe savings of, for example, 15-20 seconds by not reading the PRL.

FIG. 9 provides an illustration of the comparison made by a UE whendetermining whether a system selection file has changed, in accordancewith certain aspects of the present disclosure. As described above, theparameters of system selection files used for generating an existingmaster system priority list may be stored in a non-volatile memory 903of a UE 902. For example, the PRL_DIMENSIONS block 904 ₁ may be storedin the non-volatile memory 903 of the UE 902. Upon a subsequent power upof the UE 902, the UE may make a determination if one or more systemselection files used to generate the existing master system prioritylist have changed, as described above. For example, as illustrated inFIG. 9, the UE may make a determination if the stored PRL_DIMENSIONSblock 904 ₁ has changed by comparing with a PRL_DIMENSIONS block 904 ₂of a new PRL (e.g., received from the serving base station). Asdescribed above, various entries of the dimensions block may be comparedin order to determine if the PRL has changed since the last generationof the master system priority list. For some embodiments, it may besufficient to compare the PRL_LIST_ID of each block. However, the otherentries of the dimensions block may be compared for additionalverification.

For MLPL, the UE may compare the MLPL version identification(MLPL_VER_ID), the number of MMSS location associated priority records(NUM_MLPL_RECS), and the MLPL identification (MLPL_ID) withcorresponding MLPL parameters that have been stored in NV when theprevious master system priority list was generated. For MSPL, the UE maycompare MSPL version identification (MSPL_VER_ID) and number of MSPLidentifications (NUM_MSPL_ID) with corresponding MSPL parameters thathave been stored in NV when the previous master system priority list wasgenerated.

The PLMN files may not have unique identifiers (e.g., versionidentification) to allow a UE to determine whether the PLMN files havechanged since the last master system priority list generation. For someembodiments, a standards change to allow identifying a modifiedEHPLMN/OPLMN more effectively may be implemented.

For some embodiments, the following approach may be performed by the UEwithout a standards change. First, the UE may use the file size of thePLMN files as a first level match, as illustrated in FIG. 9. Second, theUE may store the old EHPLMN and OPLMN files 906 ₁ (i.e., files used togenerate the existing master system priority list) in NV and do abit-by-bit comparison of the new EHPLMN/OPLMN files 906 ₂ with the oldEHPLMN/OPLMN files 906 ₁. As another example, the UE may store a hashvalue (e.g., CRC-32 checksum) of the old EHPLMN/OPLMN files (e.g., inNV) and compare the hash formed from the new EHPLMN/OPLMN files with theold hash. Both approaches may require reading of the EHPLMN/OPMN filesat power up; however, the reading time may be minimal since these filesare smaller than the other MMSS files.

As described above, if there is no change in any of the system selectionfiles, it may not be required for the master system priority list to beregenerated, reducing the time required for a UE to acquire a wirelessnetwork upon power up.

Compared to other system selection files, the PRL may be a moregranular, detailed list that favors detail of information over storagespace requirements, as described above. Therefore, PRL loading may leadto larger delays compared to the loading of the other system selectionfiles. In an effort to reduce the time in acquiring a wireless network,a UE may be focused solely on optimizing PRL loading.

For example, upon power up of a wireless device, the device maydetermine if a cached PRL (e.g., stored in a non-volatile memory of theUE) used to generate an existing master system priority list haschanged, wherein determining generally includes comparing one or moreparameters for the cached PRL with one or more corresponding parametersfor another PRL (as described above). The device may utilize the cachedPRL to perform system selection if the cached PRL has not changed.However, the device may utilize a new PRL to perform the systemselection if the cached PRL has changed.

The device may store (i.e., cache) the PRL in NV before powering down.At a subsequent power up, the device may check if the PRL parametersdescribed above are the same as the PRL parameters used to generate theexisting master system priority list. If the parameters are the same,the UE may determine not to read the PRL from the UICC, and to use thecached PRL. Otherwise, the PRL may be read from the UICC. For someembodiments, the PRL parameters may be read by reading the first 100bytes of the PRL (e.g., the PRL_DIMENSIONS block) instead of reading theentire PRL (e.g., 14 kilobyte). After determining whether or not the PRLshould be loaded from the UICC, the UE may load the remaining systemselection files in order to generate the master system priority list.

The system selection procedure may only begin after the differentdatabases that specify the system priorities are read from the UICC.With the current database sizes used in LTE multimode devices, thisprocess may take up to, for example, 20 seconds. However, reading thedifferent databases may be avoided by using cached copies when possible.If there is no change in any of the databases, an LTE multimode devicemay determine that the list that specifies the relative priority of 3GPPand 3GPP2 systems need not be regenerated.

The various operations of methods described above may be performed byany suitable means capable of performing the corresponding functions.The means may include various hardware and/or software component(s)and/or module(s), including, but not limited to a circuit, anapplication specific integrated circuit (ASIC), or processor. Generally,where there are operations illustrated in Figures, those operations mayhave corresponding counterpart means-plus-function components withsimilar numbering.

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (e.g., looking up in atable, a database or another data structure), ascertaining and the like.Also, “determining” may include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory) and the like. Also,“determining” may include resolving, selecting, choosing, establishingand the like.

As used herein, a phrase referring to “at least one of” a list of itemsrefers to any combination of those items, including single members. Asan example, “at least one of: a, b, or c” is intended to cover: a, b, c,a-b, a-c, b-c, and a-b-c.

The various operations of methods described above may be performed byany suitable means capable of performing the operations, such as varioushardware and/or software component(s), circuits, and/or module(s).Generally, any operations illustrated in the Figures may be performed bycorresponding functional means capable of performing the operations.

The various illustrative logical blocks, modules and circuits describedin connection with the present disclosure may be implemented orperformed with a general purpose processor, a digital signal processor(DSP), an application specific integrated circuit (ASIC), a fieldprogrammable gate array signal (FPGA) or other programmable logic device(PLD), discrete gate or transistor logic, discrete hardware componentsor any combination thereof designed to perform the functions describedherein. A general purpose processor may be a microprocessor, but in thealternative, the processor may be any commercially available processor,controller, microcontroller or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with thepresent disclosure may be embodied directly in hardware, in a softwaremodule executed by a processor, or in a combination of the two. Asoftware module may reside in any form of storage medium that is knownin the art. Some examples of storage media that may be used includerandom access memory (RAM), read only memory (ROM), flash memory, EPROMmemory, EEPROM memory, registers, a hard disk, a removable disk, aCD-ROM and so forth. A software module may comprise a singleinstruction, or many instructions, and may be distributed over severaldifferent code segments, among different programs, and across multiplestorage media. A storage medium may be coupled to a processor such thatthe processor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

The methods disclosed herein comprise one or more steps or actions forachieving the described method. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims.

The functions described may be implemented in hardware, software,firmware or any combination thereof. If implemented in software, thefunctions may be stored as one or more instructions on acomputer-readable medium. A storage media may be any available mediathat can be accessed by a computer. By way of example, and notlimitation, such computer-readable media can comprise RAM, ROM, EEPROM,CD-ROM or other optical disk storage, magnetic disk storage or othermagnetic storage devices, or any other medium that can be used to carryor store desired program code in the form of instructions or datastructures and that can be accessed by a computer. Disk and disc, asused herein, include compact disc (CD), laser disc, optical disc,digital versatile disc (DVD), floppy disk, and Blu-ray® disc where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers.

Thus, certain aspects may comprise a computer program product forperforming the operations presented herein. For example, such a computerprogram product may comprise a computer readable medium havinginstructions stored (and/or encoded) thereon, the instructions beingexecutable by one or more processors to perform the operations describedherein. For certain aspects, the computer program product may includepackaging material.

Software or instructions may also be transmitted over a transmissionmedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition oftransmission medium.

Further, it should be appreciated that modules and/or other appropriatemeans for performing the methods and techniques described herein can bedownloaded and/or otherwise obtained by a user terminal and/or basestation as applicable. For example, such a device can be coupled to aserver to facilitate the transfer of means for performing the methodsdescribed herein. Alternatively, various methods described herein can beprovided via storage means (e.g., RAM, ROM, a physical storage mediumsuch as a compact disc (CD) or floppy disk, etc.), such that a userterminal and/or base station can obtain the various methods uponcoupling or providing the storage means to the device. Moreover, anyother suitable technique for providing the methods and techniquesdescribed herein to a device can be utilized.

It is to be understood that the claims are not limited to the preciseconfiguration and components illustrated above. Various modifications,changes and variations may be made in the arrangement, operation anddetails of the methods and apparatus described above without departingfrom the scope of the claims.

While the foregoing is directed to aspects of the present disclosure,other and further aspects of the disclosure may be devised withoutdeparting from the basic scope thereof, and the scope thereof isdetermined by the claims that follow.

1. A method for wireless communications, comprising: upon power up of awireless device, determining if one or more system selection files ofexisting system selection files have changed; and performing networkscanning utilizing the existing system selection files if the one ormore system selection files have not changed.
 2. The method of claim 1,further comprising: performing network scanning utilizing the existingsystem selection files prior to making the determination.
 3. The methodof claim 1, further comprising: reading changed system selection filesfrom a Universal Integrated Circuit Card (UICC) of the wireless deviceif the one or more system selection files have changed; and performingnetwork scanning utilizing at least the changed system selection files.4. The method of claim 1, wherein one or more parameters for theexisting system selection files are stored in a non-volatile memory ofthe wireless device.
 5. The method of claim 4, wherein determining ifthe one or more system selection files have changed comprises: comparingthe stored parameters with one or more corresponding parameters for newsystem selection files read from a Universal Integrated Circuit Card(UICC) of the wireless device.
 6. The method of claim 5, wherein theparameters comprise at least one of a version parameter indicating aversion of an associated system selection file, a size of the associatedsystem selection file, and a count of a number of records in theassociated system selection file.
 7. The method of claim 5, whereincomparing comprises: performing a bit-by-bit comparison between thestored parameters and the parameters for the new system selection files.8. The method of claim 5, wherein comparing comprises: comparing astored hash value with a hash formed from one or more parameters for thenew system selection files.
 9. The method of claim 1, wherein the systemselection files comprise a Preferred Roaming List (PRL), a Public LandMobile Network (PLMN) file, a Multimode System Selection (MMSS) SystemPriority List (MSPL), an MMSS Location associated Priority List (MLPL),and Third Generation Partnership Project (3GPP) Base StationTransceivers (BST).
 10. The method of claim 1, wherein the existingsystem selection files are used to generate a master system prioritylist.
 11. The method of claim 10, wherein performing the networkscanning comprises: utilizing the master system priority list withoutgenerating a new master system priority list if the one or more systemselection files have not changed.
 12. The method of claim 11, furthercomprising: generating a new master system priority list if the one ormore system selection files have changed.
 13. The method of claim 1,wherein the one or more system selection files specify system priorityrules.
 14. An apparatus for wireless communications, comprising: uponpower up of a wireless device, means for determining if one or moresystem selection files of existing system selection files have changed;and means for performing network scanning utilizing the existing systemselection files if the one or more system selection files have notchanged.
 15. The apparatus of claim 14, further comprising: means forperforming network scanning utilizing the existing system selectionfiles prior to making the determination.
 16. The apparatus of claim 14,further comprising: means for reading changed system selection filesfrom a Universal Integrated Circuit Card (UICC) of the wireless deviceif the one or more system selection files have changed; and means forperforming network scanning utilizing at least the changed systemselection files.
 17. The apparatus of claim 14, wherein one or moreparameters for the existing system selection files are stored in anon-volatile memory of the wireless device.
 18. The apparatus of claim17, wherein the means for determining if the one or more systemselection files have changed comprises: means for comparing the storedparameters with one or more corresponding parameters for new systemselection files read from a Universal Integrated Circuit Card (UICC) ofthe wireless device.
 19. The apparatus of claim 18, wherein theparameters comprise at least one of a version parameter indicating aversion of an associated system selection file, a size of the associatedsystem selection file, and a count of a number of records in theassociated system selection file.
 20. The apparatus of claim 18, whereinthe means for comparing comprises: means for performing a bit-by-bitcomparison between the stored parameters and the parameters for the newsystem selection files.
 21. The apparatus of claim 18, wherein the meansfor comparing comprises: means for comparing a stored hash value with ahash formed from one or more parameters for the new system selectionfiles.
 22. The apparatus of claim 14, wherein the system selection filescomprise a Preferred Roaming List (PRL), a Public Land Mobile Network(PLMN) file, a Multimode System Selection (MMSS) System Priority List(MSPL), an MMSS Location associated Priority List (MLPL), and ThirdGeneration Partnership Project (3GPP) Base Station Transceivers (BST).23. The apparatus of claim 14, wherein the existing system selectionfiles are used to generate a master system priority list.
 24. Theapparatus of claim 23, wherein the means for performing the networkscanning comprises: means for utilizing the master system priority listwithout generating a new master system priority list if the one or moresystem selection files have not changed.
 25. The apparatus of claim 24,further comprising: means for generating a new master system prioritylist if the one or more system selection files have changed.
 26. Theapparatus of claim 14, wherein the one or more system selection filesspecify system priority rules.
 27. An apparatus for wirelesscommunications, comprising: at least one processor configured to: uponpower up of a wireless device, determine if one or more system selectionfiles of existing system selection files have changed; and performnetwork scanning utilizing the existing system selection files if theone or more system selection files have not changed; and a memorycoupled to the at least one processor.
 28. The apparatus of claim 27,wherein the at least one processor is configured to: perform networkscanning utilizing the existing system selection files prior to makingthe determination.
 29. The apparatus of claim 27, wherein the at leastone processor is configured to: read changed system selection files froma Universal Integrated Circuit Card (UICC) of the wireless device if theone or more system selection files have changed; and perform networkscanning utilizing at least the changed system selection files.
 30. Theapparatus of claim 27, wherein one or more parameters for the existingsystem selection files are stored in a non-volatile memory of thewireless device.
 31. The apparatus of claim 30, wherein the at least oneprocessor configured to determine if the one or more system selectionfiles have changed comprises: comparing the stored parameters with oneor more corresponding parameters for new system selection files readfrom a Universal Integrated Circuit Card (UICC) of the wireless device.32. The apparatus of claim 31, wherein the parameters comprise at leastone of a version parameter indicating a version of an associated systemselection file, a size of the associated system selection file, and acount of a number of records in the associated system selection file.33. The apparatus of claim 31, wherein the at least one processorconfigured to compare comprises: performing a bit-by-bit comparisonbetween the stored parameters and the parameters for the new systemselection files.
 34. The apparatus of claim 31, wherein the at least oneprocessor configured to compare comprises: comparing a stored hash valuewith a hash formed from one or more parameters for the new systemselection files.
 35. The apparatus of claim 27, wherein the systemselection files comprise a Preferred Roaming List (PRL), a Public LandMobile Network (PLMN) file, a Multimode System Selection (MMSS) SystemPriority List (MSPL), an MMSS Location associated Priority List (MLPL),and Third Generation Partnership Project (3GPP) Base StationTransceivers (BST).
 36. The apparatus of claim 27, wherein the existingsystem selection files are used to generate a master system prioritylist.
 37. The apparatus of claim 36, wherein the at least one processorconfigured to perform the network scanning comprises: utilizing themaster system priority list without generating a new master systempriority list if the one or more system selection files have notchanged.
 38. The apparatus of claim 37, wherein the at least oneprocessor is configured to: generate a new master system priority listif the one or more system selection files have changed.
 39. Theapparatus of claim 27, wherein the one or more system selection filesspecify system priority rules.
 40. A computer-program product forwireless communications, the computer-program product comprising: acomputer-readable medium having code for: upon power up of a wirelessdevice, determining if one or more system selection files of existingsystem selection files have changed; and performing network scanningutilizing the existing system selection files if the one or more systemselection files have not changed.
 41. The computer-program product ofclaim 40, further comprising code for: performing network scanningutilizing the existing system selection files prior to making thedetermination.
 42. The computer-program product of claim 40, furthercomprising code for: reading changed system selection files from aUniversal Integrated Circuit Card (UICC) of the wireless device if theone or more system selection files have changed; and performing networkscanning utilizing at least the changed system selection files.
 43. Thecomputer-program product of claim 40, wherein one or more parameters forthe existing system selection files are stored in a non-volatile memoryof the wireless device.
 44. The computer-program product of claim 43,wherein the code for determining if the one or more system selectionfiles have changed comprises code for: comparing the stored parameterswith one or more corresponding parameters for new system selection filesread from a Universal Integrated Circuit Card (UICC) of the wirelessdevice.
 45. The computer-program product of claim 44, wherein theparameters comprise at least one of a version parameter indicating aversion of an associated system selection file, a size of the associatedsystem selection file, and a count of a number of records in theassociated system selection file.
 46. The computer-program product ofclaim 44, wherein the code for comparing comprises code for: performinga bit-by-bit comparison between the stored parameters and the parametersfor the new system selection files.
 47. The computer-program product ofclaim 44, wherein the code for comparing comprises code for: comparing astored hash value with a hash formed from one or more parameters for thenew system selection files.
 48. The computer-program product of claim40, wherein the system selection files comprise a Preferred Roaming List(PRL), a Public Land Mobile Network (PLMN) file, a Multimode SystemSelection (MMSS) System Priority List (MSPL), an MMSS Locationassociated Priority List (MLPL), and Third Generation PartnershipProject (3GPP) Base Station Transceivers (BST).
 49. The computer-programproduct of claim 40, wherein the existing system selection files areused to generate a master system priority list.
 50. The computer-programproduct of claim 49, wherein the code for performing the networkscanning comprises code for: utilizing the master system priority listwithout generating a new master system priority list if the one or moresystem selection files have not changed.
 51. The computer-programproduct of claim 50, further comprising code for: generating a newmaster system priority list if the one or more system selection fileshave changed.
 52. The computer-program product of claim 40, wherein theone or more system selection files specify system priority rules.